In the last few years, there has been an explosion in new forms of web based communication within a shared space. The synchronous form is most commonly practiced as Online Chat. With synchronous communication, like Online Chat for example, text is exchanged in real-time between participants. Although images can be provided to a limited extent, links to images or other multimedia is more commonly used. Another common form of synchronous communication is with web conferencing services. These services provide a discrete state synchronicity such that only one image can be shared at one time. Typically, once the session has ended, the images shared are lost. Many of the current online collaboration systems are beginning to record the sessions. For example, recording in collaborative environment is presently done as a complete video stream. However, shortcoming with present collaborative systems is that when individuals are participants to group projects it is not possible to determine who contributes what content, nor is it possible to search the content based on contributor or user, event, time or command that created the content.
The most common asynchronous forms of collaboration are forums, blogs and WIKIs. In the asynchronous case, visitors can upload text or images so that all subsequent visitors can browse and see the text or images. Blogs and Forums have an advantage over Chat in that conversations can be linked into ‘threads’. This allows the user to follow a set of contributions in a linear and/or nested fashion. Lacking is the real-time aspect as well as the ability to layer media. Currently even if you can upload an image or multimedia clip into a chat room or blog, it is not known for visitors to alter, manipulate or annotate over the original posting. What is common to these forms of shared communication is that they are linear. All information whether text or image, is accessed in order. A comment in a blog about an image does not appear on top of the image, but instead next to it as with ‘threads’. The same holds true for a chat box. Users must cut and paste to refer to a past event.
Lacking is a system that will allow both synchronous and asynchronous communication using discrete media layers such that information can be organized by time and space which in turn can allow for a variety of organizational metaphors.
It will be desirable that multiple users are able to interact with one another and perform a plurality of multimedia tasks in a virtual and synchronized shared environment; or to be able to access and review the performed tasks from local or remote sources at will in any order. It will also be desirable to allow users to set control or restrict the viewing of media layers in the same shared environment through different filtering algorithms based upon user, events, time (hereinafter “UET”) and commands. It is also desirable that an original image can seem to be altered or manipulated by overlaying various media-layers together.
The following terminologies used in the application are selectively defined by online dictionaries such as Wikipedia to help understanding:
Account Owner (creator)—The person who owns, creates or maintains or provided stewardship over a particular session and all options, rights relevant to that session.
Annotation—Extra information associated with a particular point in a document or other piece of information.
API—An application programming interface (API) is the interface that a computer system or application provides in order to allow requests for service to be made of it by other computer programs, and/or to allow data to be exchanged between them.
Blog—A blog is a website in which journal entries are posted on a regular basis and displayed in reverse chronological order. The term blog is a shortened form for web log. Authoring a blog, maintaining a blog or adding an article to an existing blog is called “blogging”. Individual articles on a blog are called “blog posts,” “posts” or “entries”. A person who posts these entries is called a “blogger”. A blog comprises hypertext, images, and links (to other WebPages and to video, audio and other files). Blogs use a conversational documentation style. Often blogs focus on a particular “area of interest”, such as Washington, D.C.'s political goings-on. Some blogs discuss personal experiences.
Collection—One or more media-layers that have an organizational structure. Typically this is stored as an XML file.
Converter—Programs for converting audio files, video, animations or applets of varying degrees of interactivity and function, presentations, documents, spreadsheets among other files in the original data format to another format that allows information to be accessible through a browser using a media application.
Common Web Browser—A web browser is a software application, technically a type of HTTP client, that enables a user to display and interact with HTML documents hosted by web servers or held in a file system. Popular browsers available for personal computers include Microsoft Internet Explorer®, Mozilla Firefox®, Opera®, Netscape®, Apple Safar® and Konqueror®. A browser is the most commonly used kind of user agent. The largest networked collection of linked documents is known as the World Wide Web. It is assumed that all common web browser will have Macromedia Flash® installed or will support the installation and proper execution of Flash® applications.
Dynamic button—A clickable link that can jump the user to a different page in the same book, a different book, generate a new email in the user's local email application, or send the user to a web page in a new browser window.
Event—A set of codes that describe the modification of a media-layer.
Images—defined as photographs, drawings (vector and raster), diagrams, etc.
Media-layer (media layer) (layer)—A media-layer is defined as a container that supports the display and modification of media and plug-ins. Media-layers have meta information, or attributes, such as; author, time/date created, its parent media-container, a list of children media-containers, position within 3D space, stacking order relative to the parent media-layer, size, reference to media or a plug-in that is assigned to the media-layer, etc
Media (multi)—Multimedia is the use of several different media to convey information (text, audio, graphics, animation, video, and interactivity).
Medium—defined as the singular of multimedia. For example, text, a media, is a singular example of multimedia.
Network—A computer network is two or more computers connected together using a telecommunication system for the purpose of conununicating and sharing resources. Examples include but are not limited to a WAN or LAN connection or an internet, intranet or extranet connection.
Online Chat—Online chat can refer to any kind of communication over the internet, but is primarily meant to refer to direct 1 on 1 chat or chat rooms, using tools such as instant messenger applications-computer programs, Internet Relay Chat, talkers and possibly MUDs, MUCKs, MUSHes and MOOes.
Plug-in—A plug-in is a computer program that can, or must, interact with another program to provide a certain, usually very specific, function. Typical examples are plug-in to display specific graphic formats (e.g., SVG if the browser doesn't support this format natively), to play multimedia files, to encrypt/decrypt email (e.g., PGP), or to filter based upon UET and commands images in graphic programs. The main program (a web browser or an email client, for example) provides a way for plug-in to register themselves with the program, and a protocol by which data is exchanged with plug-in. Plug-ins are slightly different from extensions, which modify or add to existing functionality. The main difference is that plug-in generally run within a sandbox, rely on the main program's user interface, and have a well-defined boundary to their possible set of actions.
Room—A Room is a common reference to a ‘shared space’. A room contains default tools, rules and permissions that are set and controlled by the room administrator.
Space—A shared virtual reference point where multiple users can interact in real-time upon shared objects.
Space Creator—The User creates an account to which a ‘space’ is allocated where other individuals also using a browser can engage in the synchronized or unsynchronized viewing and annotating of images.
Stage—A reference coordinate system that informs where media should be displayed. The most typical stage is a two dimensional Cartesian coordinate system where 0,0 is position in the upper right of the display area.
Session State—The state of all objects, GUI tools and controls, and media-layers, at any given time.
Sidebar panel—a window within a browser such as Windows® desktop (Windows is a registered trademark of Microsoft Corporation). Sidebars often perform various tasks, such as displaying the time and date and showing the CPU usage.
Threads—Threads in a forum are either flat (posts are listed in chronological order) or threaded (each post is made in reply to a parent post). Sometimes, community members have a choice on how to display threads.
Tools—GUI applications that affect the state of other tools and media-layers.
Tool: scene manager—specific GUI applications that affect the overall display of the stage.
Web based shared space—This describes a single point of reference for multiple users to access and add and modify information from a web browser for viewing by others via that same point of reference.
WIKI—A website that allows the visitors themselves to easily add, remove, and otherwise edit and change available content, and typically without the need for registration.
Whiteboard—a drawing utility, commonly supplied as part of a collaboration framework to allow distributed users to share a common drawing space.